package com.sugon.modules.analyse.service;

import com.sugon.entity.MoldTypePositionEntity;
import com.sugon.modules.analyse.model.chart.LineChartDataModel;
import com.sugon.modules.analyse.model.vo.MoldSingleCostStatVO;
import com.sugon.modules.analyse.model.vo.MoldTypeCostStatVO;

import java.util.List;

/**
 * 模具成本分析统计Service
 */
public interface IMoldCostAnalyseService {

    /**
     * 模具类型单台成本统计
     *
     * @param yearly   年度
     * @param moldTypeId 模具类型ID
     * @return
     */
    List<MoldTypeCostStatVO> doMoldTypeCostStat(String yearly, String moldTypeId);

    /**
     * 模具单台成本统计
     *
     * @param yearly   年度
     * @param moldTypeId 模具类型ID
     * @return
     */
    List<MoldSingleCostStatVO> doMoldCostStat(String yearly, String moldTypeId);

    /**
     * 模具单台成本统计
     *
     * @param yearly   年度
     * @param moldTypeId 模具类型
     * @return
     */
    LineChartDataModel doMoldCostLineStat(String yearly, String moldTypeId);

    /**
     * 获取指定模具类型指定年度下 各关联位置的理论单台数据
     *
     * @param moldTypeId 模具类型ID
     * @param yearly     年度
     * @return
     */
    List<MoldTypePositionEntity> getPositionCostStatItem(String moldTypeId, String yearly);

}
